package com.sz.mes.entity;

import java.util.Date;
import java.lang.Double;
import java.math.BigDecimal;
import javax.validation.constraints.NotNull;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.hibernate.validator.constraints.Length;
import java.util.List;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import com.sz.mes.entity.BaseCustomEntity;
import com.diboot.core.binding.query.BindQuery;
import com.diboot.core.binding.query.Comparison;
import com.diboot.core.util.D;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

/**
* 客户资料 Entity定义
* @author hem
* @version 1.0
* @date 2023-04-04
* Copyright © szhs
*/
@Getter @Setter @Accessors(chain = true)
@TableName("customer")
public class Customer extends BaseCustomEntity {
    private static final long serialVersionUID = -7344870657156254938L;

    /**
    * 创建人 
    */
    @TableField(fill = FieldFill.INSERT)
    private Long createBy;

    /**
    * 更新人 
    */
    @TableField(fill = FieldFill.UPDATE)
    private Long updateBy;

    /**
    * 更新时间 
    */
    @TableField(fill = FieldFill.UPDATE)
    private Date updateTime;

    /**
    * 客户名称 
    */
    @Length(max=100, message="客户名称长度应小于100")
    @TableField()
    private String customerName;

    /**
    * 客户编号 
    */
    @Length(max=100, message="客户编号长度应小于100")
    @TableField()
    private String customerNumber;

    /**
    * 客户类型id 
    */
    @TableField()
    private Long customerTypeId;

    /**
    * 联系电话 
    */
    @Length(max=100, message="联系电话长度应小于100")
    @TableField()
    private String telephone;

    /**
    * 联系人 
    */
    @Length(max=100, message="联系人长度应小于100")
    @TableField()
    private String contacts;

    /**
    * 开户名称 
    */
    @Length(max=100, message="开户名称长度应小于100")
    @TableField()
    private String accountName;

    /**
    * 税号 
    */
    @Length(max=100, message="税号长度应小于100")
    @TableField()
    private String dutyParagraph;

    /**
    * 开户银行 
    */
    @Length(max=100, message="开户银行长度应小于100")
    @TableField()
    private String accountBank;

    /**
    * 银行卡号 
    */
    @Length(max=100, message="银行卡号长度应小于100")
    @TableField()
    private String bankCard;

    /**
    * 公司地址 
    */
    @Length(max=100, message="公司地址长度应小于100")
    @TableField()
    private String companyAddress;

    /**
    * 邮箱 
    */
    @Length(max=100, message="邮箱长度应小于100")
    @TableField()
    private String email;

    /**
    * 公司电话 
    */
    @Length(max=100, message="公司电话长度应小于100")
    @TableField()
    private String companyPhone;

    /**
    * 备注 
    */
    @Length(max=100, message="备注长度应小于100")
    @TableField()
    private String remark;


} 
